package com.boil.qz.safekavass.web.request.param;

import com.boil.util.Constants;
import org.hibernate.validator.constraints.Length;
import org.hibernate.validator.constraints.NotBlank;

import javax.validation.constraints.Pattern;

/**
 * Created by ChenYong on 2017-04-25.
 * <br>
 * 添加举报的请求参数。
 */
public class AddReportResParam {
    /**
     * 举报人
     */
    @NotBlank(message = "举报人不能为空")
    @Length(min = Constants.VALUE_1, max = Constants.VALUE_50, message = "举报人的长度在1至50个字之间")
    private String reportCreatePerson;
    /**
     * 举报标题
     */
    @NotBlank(message = "举报标题不能为空")
    @Length(min = Constants.VALUE_1, max = Constants.VALUE_500, message = "举报标题的长度在1至500个字之间")
    private String reportName;
    /**
     * 举报内容
     */
    @NotBlank(message = "举报内容不能为空")
    @Length(min = Constants.VALUE_1, max = Constants.VALUE_2000, message = "举报内容的长度在1至2000个字之间")
    private String reportContent;
    /**
     * 举报来源
     */
    @NotBlank(message = "举报来源不能为空")
    @Length(min = Constants.VALUE_1, max = Constants.VALUE_50, message = "举报来源的长度在1至50个字之间")
    private String reportSource;
    /**
     * 举报图片的路径，多个路径用“|”分隔
     */
    @Pattern(regexp = Constants.STR_SPLIT_EMPTY_RE, message = "举报图片的路径格式不正确")
    private String reportImages;

    /**
     * 默认构造器。
     */
    public AddReportResParam() {
        super();
    }

    public String getReportCreatePerson() {
        return reportCreatePerson;
    }

    public void setReportCreatePerson(String reportCreatePerson) {
        this.reportCreatePerson = reportCreatePerson;
    }

    public String getReportName() {
        return reportName;
    }

    public void setReportName(String reportName) {
        this.reportName = reportName;
    }

    public String getReportContent() {
        return reportContent;
    }

    public void setReportContent(String reportContent) {
        this.reportContent = reportContent;
    }

    public String getReportSource() {
        return reportSource;
    }

    public void setReportSource(String reportSource) {
        this.reportSource = reportSource;
    }

    public String getReportImages() {
        return reportImages;
    }

    public void setReportImages(String reportImages) {
        this.reportImages = reportImages;
    }

    @Override
    public String toString() {
        final StringBuffer sb = new StringBuffer("AddReportResParam{");
        sb.append("reportCreatePerson='").append(reportCreatePerson).append('\'');
        sb.append(", reportName='").append(reportName).append('\'');
        sb.append(", reportContent='").append(reportContent).append('\'');
        sb.append(", reportSource='").append(reportSource).append('\'');
        sb.append(", reportImages='").append(reportImages).append('\'');
        sb.append('}');
        return sb.toString();
    }
}